{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from keras import applications\n",
    "from keras.models import Sequential\n",
    "from keras.models import Model\n",
    "from keras.layers import Dropout, Flatten, Dense, Activation, Reshape\n",
    "from keras.callbacks import CSVLogger\n",
    "import tensorflow as tf\n",
    "from scipy.ndimage import imread\n",
    "import numpy as np\n",
    "import random\n",
    "from keras.layers import GRU, CuDNNGRU\n",
    "from keras.layers import Conv1D, MaxPooling1D\n",
    "from keras import backend as K\n",
    "import keras\n",
    "from keras.callbacks import CSVLogger, ModelCheckpoint\n",
    "from keras.backend.tensorflow_backend import set_session\n",
    "from keras import optimizers\n",
    "import h5py\n",
    "from sklearn.preprocessing import MinMaxScaler\n",
    "import os\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import h5py"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "with h5py.File(''.join(['bitcoin2015to2017_close.h5']), 'r') as hf:\n",
    "    datas = hf['inputs'].value\n",
    "    labels = hf['outputs'].value\n",
    "    input_times = hf['input_times'].value\n",
    "    output_times = hf['output_times'].value\n",
    "    original_inputs = hf['original_inputs'].value\n",
    "    original_outputs = hf['original_outputs'].value\n",
    "    original_datas = hf['original_datas'].value"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "scaler=MinMaxScaler()\n",
    "#split training validation\n",
    "training_size = int(0.8* datas.shape[0])\n",
    "training_datas = datas[:training_size,:,:]\n",
    "training_labels = labels[:training_size,:,:]\n",
    "validation_datas = datas[training_size:,:,:]\n",
    "validation_labels = labels[training_size:,:,:]\n",
    "validation_original_outputs = original_outputs[training_size:,:,:]\n",
    "validation_original_inputs = original_inputs[training_size:,:,:]\n",
    "validation_input_times = input_times[training_size:,:,:]\n",
    "validation_output_times = output_times[training_size:,:,:]\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "os.environ['CUDA_DEVICE_ORDER'] = 'PCI_BUS_ID'\n",
    "os.environ['CUDA_VISIBLE_DEVICES'] = '0'\n",
    "os.environ['TF_CPP_MIN_LOG_LEVEL']='2'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "config = tf.ConfigProto()\n",
    "config.gpu_options.allow_growth = True\n",
    "set_session(tf.Session(config=config))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(221, 272, 1)\n",
      "(221, 272, 1)\n"
     ]
    }
   ],
   "source": [
    "ground_true = np.append(validation_original_inputs,validation_original_outputs, axis=1)\n",
    "ground_true_times = np.append(validation_input_times,validation_output_times, axis=1)\n",
    "print ground_true_times.shape\n",
    "print ground_true.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "step_size = datas.shape[1]\n",
    "batch_size= 8\n",
    "nb_features = datas.shape[2]\n",
    "epochs = 1\n",
    "output_size=16\n",
    "units= 50"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "model = Sequential()\n",
    "model.add(GRU(units=units, activation=None, input_shape=(step_size,nb_features),return_sequences=False))\n",
    "model.add(Activation('tanh'))\n",
    "model.add(Dropout(0.2))\n",
    "model.add(Dense(output_size))\n",
    "model.add(Activation('relu'))\n",
    "model.load_weights('weights/bitcoin2015to2017_close_GRU_1_tanh_relu_-32-0.00004.hdf5')\n",
    "model.compile(loss='mse', optimizer='adam')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(300628, 1)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "original_datas.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1, 221, 16)\n",
      "(3536,)\n"
     ]
    }
   ],
   "source": [
    "predicted = model.predict(validation_datas)\n",
    "predicted_inverted = []\n",
    "\n",
    "# In[7]:\n",
    "# we only care about the 0 axis, close price data\n",
    "\n",
    "scaler.fit(original_datas[:,0].reshape(-1,1))\n",
    "predicted_inverted.append(scaler.inverse_transform(predicted))\n",
    "print np.array(predicted_inverted).shape\n",
    "#get only the close data\n",
    "ground_true = ground_true[:,:,0].reshape(-1)\n",
    "ground_true_times = ground_true_times.reshape(-1)\n",
    "ground_true_times = pd.to_datetime(ground_true_times, unit='s')\n",
    "# since we are appending in the first dimension\n",
    "predicted_inverted = np.array(predicted_inverted)[0,:,:].reshape(-1)\n",
    "print np.array(predicted_inverted).shape\n",
    "validation_output_times = pd.to_datetime(validation_output_times.reshape(-1), unit='s')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(60112, 2)"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ground_true_df = pd.DataFrame()\n",
    "ground_true_df['times'] = ground_true_times\n",
    "ground_true_df['value'] = ground_true\n",
    "ground_true_df.set_index('times').reset_index()\n",
    "ground_true_df.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(3536, 2)"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "prediction_df = pd.DataFrame()\n",
    "prediction_df['times'] = validation_output_times\n",
    "prediction_df['value'] = predicted_inverted\n",
    "prediction_df.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "prediction_df = prediction_df.loc[(prediction_df[\"times\"].dt.year == 2017 )&(prediction_df[\"times\"].dt.month > 7 ),: ]\n",
    "ground_true_df = ground_true_df.loc[(ground_true_df[\"times\"].dt.year == 2017 )&(ground_true_df[\"times\"].dt.month > 7 ),:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\navL/mIYc5kdvrFcAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fe5b968f410>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(20,10))\n",
    "plt.plot(ground_true_df.times,ground_true_df.value, label = 'Actual')\n",
    "plt.plot(prediction_df.times,prediction_df.value,'ro', label='Predicted')\n",
    "plt.legend(loc='upper left')\n",
    "plt.savefig('result/bitcoin2015to2017_close_GRU_1_tanh_relu_result.png')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "17667.32542716352"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.metrics import mean_squared_error\n",
    "mean_squared_error(validation_original_outputs[:,:,0].reshape(-1),predicted_inverted)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.14"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
